layui.define([], function(exports) {
	"use strict";
    var MOD_NAME = 'drag'
    colDrag('.sidebar-draggable-icon',270,600)
    rowDrag('.properties-drag','.box',36,200,600)
    rowDrag('.console-drag','.gs-body',36,200,600)
    /**
     * 横向拖拽
     * @param node 拖拽的元素
     * @param minValue 最小值
     * @param maxValue 最大值
     */
    function colDrag(node,minValue,maxValue){ //sidebar右侧拖拽 横向拖拽
        $(document).on('mousedown',node,function(){
            $(document).on('mousemove',function(e){
                if(e.pageX >= minValue && e.pageX <= maxValue){
                    $(node).parent().css({
                        'width': e.pageX
                    })
                } else {
                    if(e.pageX < minValue){
                        $(node).parent().css({
                            'width': minValue
                        })
                    } else {
                        $(node).parent().css({
                            'width': maxValue
                        })
                    }
                    $(document).off('mousemove')
                    
                }
            })

            $(document).on('mouseup',node,function(){
                $(document).off('mousemove')
            })
        })
    }

    /**
     * 纵向拖拽
     * @param node 拖拽的元素
     * @param parentNode 拖拽元素的父元素
     * @param deviation 纵向偏差
     * @param minValue 最小值
     * @param maxValue 最大值
     */
    function rowDrag(node,parentNode,deviation,minValue, maxValue){
        $(document).on('mousedown',node,function(){
            $(document).on('mousemove',function(e){
                $(node).parent().css({
                    'height': $(parentNode).height() - e.pageY + deviation +'px'
                })
                if($(node).parent().height() > maxValue){
                    $(node).parent().height(maxValue)
                    $(document).off('mousemove')
                }
                if($(node).parent().height() < minValue){
                    $(node).parent().height(minValue)
                    $(document).off('mousemove')
                }
            })

            $(document).on('mouseup',node,function(){
                $(document).off('mousemove')
            })
        })
    }
    exports(MOD_NAME);
});